home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / ada / c01oop.zip / CPPWKBK / CPPV4-2.CPP < prev    next >
C/C++ Source or Header  |  1992-08-25  |  868b  |  47 lines

  1. #define HEADER "C++ Problem 4.2 by Rick Conn using Borland C++"
  2.  
  3. #include <stdio.h>
  4.  
  5. class number {
  6. protected:
  7.   int value;
  8. public:
  9.   number (int new_value = 0);
  10.   void set (int new_value = 0);
  11. };
  12.  
  13. class pnumber : public number {
  14. public:
  15.   // Note: I had to add a constructor for pnumber
  16.   // because number's constructor required an argument
  17.   pnumber (int new_value = 0);
  18.   void print(void);
  19. };
  20.  
  21. number::number(int new_value) {
  22.   value = new_value;
  23. }
  24.  
  25. void number::set (int new_value) {
  26.   value = new_value;
  27. }
  28.  
  29. pnumber::pnumber(int new_value) {
  30.   value = new_value;
  31. }
  32.  
  33. void pnumber::print (void) {
  34.   printf("The value is %d\n", value);
  35. }
  36.  
  37. void main(void)
  38. {
  39.   printf("%s\n", HEADER);
  40.  
  41.   pnumber a (12), b(20), c(0);
  42.   a.print(); b.print(); c.print();
  43.  
  44.   a.set(1); b.set(2); c.set(3);
  45.   a.print(); b.print(); c.print();
  46. }
  47.